package game.tests;

/**
 * @author Conrad, Shun
 * AbstractTransition class acts as the central hub to all transition classes that can be 
 * implemented between gameState. It is used to add a visual element (be it fade, flashes, etc.)
 * to what goes on when the states change
 */
public abstract class AbstractTransition {

	/**'
	 * This method adds commonly used visual transitions to the GTGE display as it moves through
	 * different GamesStates. (Decorator)
	 */
	public AbstractTransition(GameLoop gameLoop){
		runTransition(gameLoop);
	}

	/**
	 * runTransition performs some commonly used visual transition on a GTGE display, renders
	 */	
	public abstract void runTransition(GameLoop gameLoop);
}
